﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AccesoDatos.Manejador;
using AccesoDatos.Objetos;

namespace Autorizacion_facturas_caja.Infonavit
{
   
    public partial class frmInfonavit_Reporte_Filtro_Sucursal : Form
    {
        Manejador_Empleado_Captura Mane = new Manejador_Empleado_Captura();
        objRH obj = new objRH();
        objVacaciones obj1 = new objVacaciones();
        Manejador_Infonavit MI = new Manejador_Infonavit();

        #region FUNCIONES
        public frmInfonavit_Reporte_Filtro_Sucursal()
        {
            InitializeComponent();
            ObtieneDatosCombo();
            ToolTip1();
            fecha();
            btnReporte.Visible = false;
        }


        private void ToolTip1()
        {

            ToolTip toolTip1 = new ToolTip();
            toolTip1.ShowAlways = true;
            toolTip1.SetToolTip(this.btnBuscar, "BUSCAR");
            toolTip1.SetToolTip(this.btnReporte, "GENERAR REPORTE");
            toolTip1.SetToolTip(this.btnRegresar, "REGRESAR");
        }

        private void fecha()
        {
            DateTime Fecha_Hoy = DateTime.Today;

            Fecha_Hoy = Fecha_Hoy.AddDays(-15);
            dTPInicio.Text = Fecha_Hoy.ToShortDateString();
        }

        //Obtiene los datos de la tabla cat_sucursales al combo de sucursales
        private void ObtieneDatosCombo()
        {
            cmbSucursal.DataSource = Mane.ObtieneSucursales();
            cmbSucursal.ValueMember = "SucId";
            cmbSucursal.DisplayMember = "Nombre";
        }

        private void buscar()
        {
            if (cmbTipo.Text.Trim() != "")
            {
                btnReporte.Visible = true;
                obj.Tipo = cmbTipo.Text.Trim();
                obj1.Fecha_Inicio_Vacaciones = dTPInicio.Value;
                obj1.Fecha_fin_vacaciones = dTPFin.Value;
                obj.SucId = cmbSucursal.SelectedValue.ToString();
                if (cBTodas.Checked == true) { obj.SucId = "0"; }
                dataGridView1.DataSource = MI.ConsultaReporteSucursales(obj.SucId, obj.Tipo, obj1.Fecha_Inicio_Vacaciones, obj1.Fecha_fin_vacaciones);
                propiedadesColumnas();
            }
            else { MessageBox.Show("SELECCIONE ATRIBUTOS PARA LA BUSQUEDA", "ALERTA"); }
        }

        private void propiedadesColumnas()
        {
            //QUITA LA PRIMERA COLUMNA
            this.dataGridView1.RowHeadersVisible = false;

            /*Esconde las columnas*/

            this.dataGridView1.Columns["nombre"].Visible = false;
            this.dataGridView1.Columns["apellidos"].Visible = false;

            //Renombra columnas
            this.dataGridView1.Columns["Nombre_apellidos"].HeaderText = "EMPLEADO";
            this.dataGridView1.Columns["empresa"].HeaderText = "EMPRESA";
            this.dataGridView1.Columns["Numero_de_credito"].HeaderText = "NUMERO DE CREDITO";
            this.dataGridView1.Columns["Tipo_de_Infonavit"].HeaderText = "TIPO DESCUENTO";
            this.dataGridView1.Columns["Monto_descontar"].HeaderText = "MONTO A DESCONTAR";

            //Ordena
            if (cBTodas.Checked == true)
            {
                this.dataGridView1.Columns["NEMONICO"].HeaderText = "SUCURSAL";
                this.dataGridView1.Columns["NEMONICO"].DisplayIndex = 0;
                this.dataGridView1.Columns["NEMONICO"].Width = 70;
                this.dataGridView1.Columns["NEMONICO"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
                this.dataGridView1.Columns["NEMONICO"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
                this.dataGridView1.Columns["Nombre_apellidos"].DisplayIndex = 1;
            }
            else
            {
                this.dataGridView1.Columns["Nombre_apellidos"].DisplayIndex = 0;
            }

            //Alinea
            // this.dataGridView1.Columns["Nombre_apellidos"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft;
            this.dataGridView1.Columns["Numero_de_credito"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
            //this.dataGridView1.Columns["empresa"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["Tipo_de_Infonavit"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["Monto_descontar"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

            this.dataGridView1.Columns["Nombre_apellidos"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["empresa"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["Numero_de_credito"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["Tipo_de_Infonavit"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["Monto_descontar"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;

            //Tamaño
            this.dataGridView1.Columns["Nombre_apellidos"].Width = 200;

            this.dataGridView1.Columns["Monto_descontar"].DefaultCellStyle.Format = "c";
        }


        #endregion

        #region BOTONES

        private void btnRegresar_Click(object sender, EventArgs e)
        {
            Close();
        }

        private void btnReporte_Click(object sender, EventArgs e)
        {
            frmInfonavit_Reporte_Sucursal firs = new frmInfonavit_Reporte_Sucursal(obj.SucId, cmbTipo.Text, obj1.Fecha_Inicio_Vacaciones, obj1.Fecha_fin_vacaciones);
            firs.ShowDialog();
        }

        private void btnBuscar_Click(object sender, EventArgs e)
        {
            buscar();
        }

        #endregion

        #region  EVENTOS
        private void cBTodas_CheckedChanged(object sender, EventArgs e)
        {
            if (cBTodas.Checked == true)
            {
                cmbSucursal.Enabled = false;
            }
            else if (cBTodas.Checked == false)
            {
                cmbSucursal.Enabled = true;
            }
        }

        private void frmInfonavit_Reporte_Filtro_Sucursal_Load(object sender, EventArgs e)
        {
            toolTip1.SetToolTip(btnBuscar, "BUSCAR");
            toolTip1.SetToolTip(btnRegresar, "REGRESAR");
            toolTip1.SetToolTip(btnReporte, "REPORTE");
            toolTip1.SetToolTip(dTPInicio, "FECHA DE REGISTRO");
            toolTip1.SetToolTip(dTPFin, "FECHA DE REGISTRO");
        }
        #endregion

    }


}
